A majority of people in our society are now aware of “digital” technology. The use of the word “digital” refers to the representation of information by discrete numbers, or “digits”. Digital representation of information offers several advantages over analog representation. It is desirable in the art of data communication to represent and communicate information with arbitrary accuracy. The storage and retrieval of information in digital format has allowed much-improved flexibility and fidelity. Digital music and video storage are applications that are familiar to many.
The most popular method of representing digital information is in the form of Binary digITs (BITs). In this representation, information is represented as one of two possible states, either a “0” or a “1”. This is the simplest form of representation, corresponding to a switch being in the “on” or “off” position. This is the form of representation employed in computers, where electrical switches are set to either the on or off position to represent bits. In the discussion that follows, data is transmitted, for example, by digital equipment, in the form of bits.
There is often a need in the art to transmit bits from their source to a remote destination. It is desirable to communicate bits reliably so that the underlying information the bits represent will be received correctly and accurately. In many cases, the destination is a great distance from the source and the bits may be transmitted through a “wireless” Radio Frequency (RF) link.
The communication “channel” can be viewed as the medium which enables communication to take place. In the case of an RF transmission, the channel would represent the signal path(s) between transmit and receive locations. A channel in a data communication system is typically a source of degradation to the communication process, for example, a source of “noise”. The degradation that typically occurs in a channel can be degradation due to atmospheric noise, interference from other signals, or many other sources. In addition to transmitting data across a channel which is remote in space, data transmission may also comprise, for example, the data storage scenario, where the destination is “remote” in time. Thus, conventional data transmission systems may be associated with multimedia storage, for example, the “channel” may represent the sources of error and distortion in the storage medium, for example, a Compact Disc (CD) or a Digital Versatile (or Video) Disk (DVD).
Typically, the channel of a data transmission system communicates with a “receiver”. The receiver is a device which examines the incoming analog signal and makes its best estimate of the bit that was transmitted during each corresponding time period. Modern receivers often make use of information concerning the type and state of the channel as well as the details of the transmitted signal format to make correct decisions about the transmitted bits.
One of the operations typically performed by the receiver, in order to correctly estimate the transmitted bits, is to compare a copy of the known pulse shape to each received pulse containing noise as it is received at the receiver's input during the corresponding bit interval. This precise mathematical operation is known in the art as “correlation”. In the correlation process, the receiver juxtaposes the known transmitted pulse shape with a noisy received pulse, multiplies them together, and integrates the result over the bit period.
In some cases, the bandwidth allocation over which a given user is allowed to transmit a signal is limited, for example, to a very narrow bandwidth. Typically, in order to decrease a digital signal's bandwidth, a very slowly changing pulse shape may often be used. In order to transmit the desired signal over the narrow bandwidth, the signal pulses are transmitted superimposed on or overlapping one another. However, when the shape of the pulse changes slowly, it may take longer than one bit period to start up, then turn off the pulse. Unfortunately, when these pulses are superimposed, it becomes difficult to recognize the individual pulses corresponding to individual bits of data. This situation is referred to in the art as “intersymbol interference” or ISI. Although the bandwidth of a signal utilizing a more slowly changing pulse is narrower, the extended pulse skirts cause intersymbol interference, resulting in an increased number of bits being declared in error.
In some prior art transmission systems, receivers may include sophisticated algorithms for addressing inaccuracies due to ISI. Instead of looking at individual received pulses, these algorithms typically examine each given pulse as well as certain of its “neighbors”. These algorithms are called “equalizers” in the art and they can effectively “subtract off” or remove the interference caused to a symbol by its neighbors. These algorithms are typically implemented in Digital Signal Processing (DSP) software as algorithms which operate on the sampled receiver outputs. In essence, an equalizer must examine groups of received pulses simultaneously, considering all possible combinations of “0”'s or “1”'s in each position. Quite often, the number of neighboring pulses that affect a given pulse is small. For example, in some prior art equalizers, only the immediate predecessor and immediate successor of a given pulse overlap and thus affect the given pulse. In this case, the so-called “ISI span” of the pulse is three bits. The ISI span is defined in the art as comprising the current symbol and the other symbols affecting it.
One simple type of equalizer used in the prior art is referred to as a “transversal” equalizer. A transversal equalizer is a relatively simple device in which received neighboring pulse correlation values are weighted and subtracted from the corresponding current bit pulse the receiver is attempting to process or decide upon. The weighting coefficients, typically designated ci, are constant numbers. In this way the ISI from neighboring bits can be partially removed. The word “partially” is important here, since the receiver having an transversal equalizer does not know the exact value of the neighboring bits, and thus must estimate their weighting coefficients. Therefore, the accuracy of such equalizers is limited by the algorithm used to “guess” the value of the weighting coefficients, that is, at least some error is inherent in such equalizers.
Much research activity in the digital communications field focuses on new algorithms for equalization of slowly-changing pulse shapes. Although there are many different types of architectures for equalizers, the errors inherent in the simple transversal equalizer are typical of the errors that are inherent in other similar equalizers. There is need in the communications art to provide a method and apparatus to minimize or even eliminate the errors inherent in prior art communications system equalizers.